package com.ruoyi.common.core.domain.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.domain.BaseEntity;
import org.omg.CORBA.PUBLIC_MEMBER;

/**
 * 部门表 sys_dept
 * 
 * @author ruoyi
 */
public class SysDept extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo;
    }

    public Boolean getValid() {
        return valid;
    }

    public void setValid(Boolean valid) {
        this.valid = valid;
    }

    public Integer getParentId() {
        return parentId;
    }

    public void setParentId(Integer parentId) {
        this.parentId = parentId;
    }

    public Boolean getWorkshop() {
        return workshop;
    }

    public void setWorkshop(Boolean workshop) {
        this.workshop = workshop;
    }

    public Date getCreateTs() {
        return createTs;
    }

    public void setCreateTs(Date createTs) {
        this.createTs = createTs;
    }

    public Integer getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(Integer createdBy) {
        this.createdBy = createdBy;
    }

    public Integer getSortorder() {
        return sortorder;
    }

    public void setSortorder(Integer sortorder) {
        this.sortorder = sortorder;
    }

    public Integer getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getCompanyCode() {
        return companyCode;
    }

    public void setCompanyCode(String companyCode) {
        this.companyCode = companyCode;
    }

    public List<String> getListcode() {
        return listcode;
    }

    public void setListcode(List<String> listcode) {
        this.listcode = listcode;
    }

    public Boolean getUser() {
        return user;
    }

    public void setUser(Boolean user) {
        this.user = user;
    }

    public Integer id;
    @Size(min = 0, max = 250, message = "部门名称长度不能超过250个字符")
    public String name;
    public String code;
    public String longitude;
    public String latitude;
    public Integer status;
    public String memo;
    public Boolean valid;
    public Integer parentId;
    public Boolean workshop;
    public Date createTs;
    public Integer createdBy;
    public Integer sortorder;
    public Integer companyId;
    public String companyName;
    public String companyCode;
    public List<String> listcode;
    public Boolean user;
    /** 子部门 */
    public String parentname;

    //非表字段
    private Integer greatRisk;
    private Integer largerRisk;
    private Integer commonRisk;
    private Integer lowRisk;
    private Integer countRisk;
    private String detectResult;
    private String factorsName;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date detectTs;
    private List<SysDept> children = new ArrayList<SysDept>();

    private Map<String,Object> levelMap;

    public String getParentname() {
        return parentname;
    }

    public void setParentname(String parentname) {
        this.parentname = parentname;
    }

    public List<SysDept> getChildren() {
        return children;
    }

    public void setChildren(List<SysDept> children) {
        this.children = children;
    }

    public Integer getGreatRisk() {
        return greatRisk;
    }

    public void setGreatRisk(Integer greatRisk) {
        this.greatRisk = greatRisk;
    }

    public Integer getLargerRisk() {
        return largerRisk;
    }

    public void setLargerRisk(Integer largerRisk) {
        this.largerRisk = largerRisk;
    }

    public Integer getCommonRisk() {
        return commonRisk;
    }

    public void setCommonRisk(Integer commonRisk) {
        this.commonRisk = commonRisk;
    }

    public Integer getLowRisk() {
        return lowRisk;
    }

    public void setLowRisk(Integer lowRisk) {
        this.lowRisk = lowRisk;
    }

    public Integer getCountRisk() {
        return countRisk;
    }

    public void setCountRisk(Integer countRisk) {
        this.countRisk = countRisk;
    }

    public String getDetectResult() {
        return detectResult;
    }

    public void setDetectResult(String detectResult) {
        this.detectResult = detectResult;
    }

    public String getFactorsName() {
        return factorsName;
    }

    public void setFactorsName(String factorsName) {
        this.factorsName = factorsName;
    }

    public Date getDetectTs() {
        return detectTs;
    }

    public void setDetectTs(Date detectTs) {
        this.detectTs = detectTs;
    }

    public Map<String, Object> getLevelMap() {
        return levelMap;
    }

    public void setLevelMap(Map<String, Object> levelMap) {
        this.levelMap = levelMap;
    }
}
